<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<html>
 <head>
  <meta http-equiv="content-type" content="text/html; charset=UTF-8">
  <title>Find position (in grapheme units) of first occurrence of a string</title>
 </head>
 <body class="docs"><div id="layout">
  <div id="layout-content"><div id="function.grapheme-strpos" class="refentry">
 <div class="refnamediv">
  <h1 class="refname">grapheme_strpos</h1>
  <p class="verinfo">(PHP 5 &gt;= 5.3.0, PHP 7, PECL intl &gt;= 1.0.0)</p><p class="refpurpose"><span class="refname">grapheme_strpos</span> &mdash; <span class="dc-title">Find position (in grapheme units) of first occurrence of a string</span></p>

 </div>
 <div class="refsect1 description" id="refsect1-function.grapheme-strpos-description">
  <h3 class="title">说明</h3>
  <p class="para">过程化风格</p>
  <div class="methodsynopsis dc-description">
   <span class="methodname"><strong>grapheme_strpos</strong></span>
    ( <span class="methodparam"><span class="type">string</span> <code class="parameter">$haystack</code></span>
   , <span class="methodparam"><span class="type">string</span> <code class="parameter">$needle</code></span>
   [, <span class="methodparam"><span class="type">int</span> <code class="parameter">$offset</code><span class="initializer"> = 0</span></span>
  ] ) : <span class="type">int</span></div>

  <p class="para rdfs-comment">
   Find position (in grapheme units) of first occurrence of a string
  </p> 
  </div>


 <div class="refsect1 parameters" id="refsect1-function.grapheme-strpos-parameters">
  <h3 class="title">参数</h3>
  <p class="para">
   <dl>

    
     <dt>
<code class="parameter">haystack</code></dt>

     <dd>

      <p class="para">
       The string to look in. Must be valid UTF-8.
      </p>
     </dd>

    
    
     <dt>
<code class="parameter">needle</code></dt>

     <dd>

      <p class="para">
       The string to look for. Must be valid UTF-8.
      </p>
     </dd>

    
    
     <dt>
<code class="parameter">offset</code></dt>

     <dd>

      <p class="para">
       The optional $offset parameter allows you to specify where in $haystack to
       start searching as an offset in grapheme units (not bytes or characters).
       If the offset is negative, it is treated relative to the end of the string.
       The position returned is still relative to the beginning of haystack
       regardless of the value of $offset.
      </p>
     </dd>

    
   </dl>

  </p>
 </div>

   
 
 <div class="refsect1 returnvalues" id="refsect1-function.grapheme-strpos-returnvalues">
  <h3 class="title">返回值</h3>
  <p class="para">
   Returns the position as an integer. If needle is not found, grapheme_strpos() will return boolean FALSE.   
  </p>
 </div>

 
 <div class="refsect1 changelog" id="refsect1-function.grapheme-strpos-changelog">
  <h3 class="title">更新日志</h3>
  <table class="doctable informaltable">
   
    <thead>
     <tr>
      <th>版本</th>
      <th>说明</th>
     </tr>

    </thead>

    <tbody class="tbody">
     <tr>
      <td>7.1.0</td>
      <td>
       Support for negative <code class="parameter">offset</code>s has been added.
      </td>
     </tr>

    </tbody>
   
  </table>

 </div>


 <div class="refsect1 examples" id="refsect1-function.grapheme-strpos-examples">
  <h3 class="title">范例</h3>
  <div class="example" id="example-3097">
   <p><strong>Example #1 <span class="function"><strong>grapheme_strpos()</strong></span> example</strong></p>
   <div class="example-contents">
<div class="phpcode"><pre><span style="color: #000000">
<span style="color: #0000BB">&lt;?php<br /><br />$char_a_ring_nfd&nbsp;</span><span style="color: #007700">=&nbsp;</span><span style="color: #DD0000">"a\xCC\x8A"</span><span style="color: #007700">;&nbsp;&nbsp;</span><span style="color: #FF8000">//&nbsp;'LATIN&nbsp;SMALL&nbsp;LETTER&nbsp;A&nbsp;WITH&nbsp;RING&nbsp;ABOVE'&nbsp;(U+00E5)&nbsp;normalization&nbsp;form&nbsp;"D"<br /></span><span style="color: #0000BB">$char_o_diaeresis_nfd&nbsp;</span><span style="color: #007700">=&nbsp;</span><span style="color: #DD0000">"o\xCC\x88"</span><span style="color: #007700">;&nbsp;</span><span style="color: #FF8000">//&nbsp;'LATIN&nbsp;SMALL&nbsp;LETTER&nbsp;O&nbsp;WITH&nbsp;DIAERESIS'&nbsp;(U+00F6)&nbsp;normalization&nbsp;form&nbsp;"D"<br /><br /></span><span style="color: #007700">print&nbsp;</span><span style="color: #0000BB">grapheme_strpos</span><span style="color: #007700">(&nbsp;</span><span style="color: #0000BB">$char_a_ring_nfd&nbsp;</span><span style="color: #007700">.&nbsp;</span><span style="color: #0000BB">$char_a_ring_nfd&nbsp;</span><span style="color: #007700">.&nbsp;</span><span style="color: #0000BB">$char_o_diaeresis_nfd</span><span style="color: #007700">,&nbsp;</span><span style="color: #0000BB">$char_o_diaeresis_nfd</span><span style="color: #007700">);<br /><br /></span><span style="color: #0000BB">?&gt;</span>
</span>
</pre></div>
   </div>

  </div>
  <p class="para">以上例程会输出：</p>
  <div class="example-contents screen">
<div class="cdata"><pre>
2
</pre></div>
  </div>
 </div>


 <div class="refsect1 seealso" id="refsect1-function.grapheme-strpos-seealso">
  <h3 class="title">参见</h3>
  <p class="para">
   <ul class="simplelist">
    <li class="member"><span class="function"><a href="grapheme_stripos.html" class="function" rel="rdfs-seeAlso">grapheme_stripos()</a> - Find position (in grapheme units) of first occurrence of a case-insensitive string</span></li>
    <li class="member"><span class="function"><a href="grapheme_stristr.html" class="function" rel="rdfs-seeAlso">grapheme_stristr()</a> - Returns part of haystack string from the first occurrence of case-insensitive needle to the end of haystack</span></li>
    <li class="member"><span class="function"><a href="grapheme_strripos.html" class="function" rel="rdfs-seeAlso">grapheme_strripos()</a> - Find position (in grapheme units) of last occurrence of a case-insensitive string</span></li>
    <li class="member"><span class="function"><a href="grapheme_strrpos.html" class="function" rel="rdfs-seeAlso">grapheme_strrpos()</a> - Find position (in grapheme units) of last occurrence of a string</span></li>
    <li class="member"><span class="function"><a href="grapheme_strstr.html" class="function" rel="rdfs-seeAlso">grapheme_strstr()</a> - Returns part of haystack string from the first occurrence of needle to the end of haystack</span></li>
    <li class="member">
     <a href="http://unicode.org/reports/tr29/#Grapheme_Cluster_Boundaries" class="link external">&raquo;&nbsp;
      Unicode Text Segmentation: Grapheme Cluster Boundaries
     </a>
    </li>
   </ul>
  </p>
 </div>

</div></div></div></body></html>